'use strict';
const dayjs = require("dayjs");

module.exports = app => {
    const { STRING, INTEGER, DATE } = app.Sequelize;
    return app.model.define(
        'File',
        {
            id: {type: INTEGER, primaryKey: true, autoIncrement: true},
            file_category: STRING(255),
            file_url: STRING(255),
            file_name: STRING(255),
            // 原名称
            file_origin_name: STRING(255),
            file_size: STRING(255),
            file_type: STRING(255),
            create_time: {
                type: DATE,
                get() {
                    return dayjs(this.getDataValue('create_time')).format('YYYY-MM-DD HH:mm:ss');
                }
            },
            update_time: {
                type: DATE,
                get() {
                    return dayjs(this.getDataValue('update_time')).format('YYYY-MM-DD HH:mm:ss');
                }
            }
        },
        {
            tableName: 'file',
            timestamps: true,
            createdAt: 'create_time',
            updatedAt: 'update_time'
        }
    );
};
